Repository navigation
Feature | Write TimeOnly instances as time values - #4604
Merged
Merged
Conversation
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
priyankatiwari08
approved these changes
Sep 23, 2026
priyankatiwari08
left a comment
Contributor
There was a problem hiding this comment.
Looks good to approve. The change maps TimeOnly through the existing TimeSpan/time serialization paths for both normal and sql_variant writes, keeps the support #if NET-scoped, and adds manual coverage for min/max TimeOnly plus a valid TimeSpan baseline across the affected variants.
I don't see a blocking issue. No public API or ref/ update is needed.
cheenamalhotra
approved these changes
Sep 25, 2026
Member
|
/azp run |
cheenamalhotra
enabled auto-merge (squash)
October 1, 2026 07:02
|
Azure Pipelines: Successfully started running 2 pipeline(s). 1 pipeline(s) were filtered out due to trigger conditions. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR follows up the earlier #4439. At the conclusion of that PR,
DateOnlyinstances were always written as adatetype. This one now raisesTimeOnlyto parity withDateOnlyin three cases:SqlBulkCopy, based upon a TimeOnly instance within aDataRowor aDataTable.SqlParameterof SqlDbType Variant containing a TimeOnly instance.SqlDataRecordobjects, all with a column of SqlDbType Variant and a row containing a TimeOnly instance.I also noticed while in the area that although DateTimeVariantTests was performing a number of validity checks against invalid
timevalues, checks against a validtimevalue were missing. I've added these.Notes
TdsParser.WriteSqlVariantDataRowValue.TdsParser.WriteSqlVariantValue.s_canAccessSetterDirectly. I added a mapping confirming that a variant type can contain a TimeOnly instance.Issues
None. Repeats the style of fix in #4439 for TimeOnly instances.
Testing
New test cases have been added which verify functionality, existing tests continue to pass.